package com.zhang.authoritycenter.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zhang.authoritycenter.common.model.dao.sys.SysDirectionDO;
import com.zhang.authoritycenter.common.model.dto.sys.DirectionReqExtDTO;
import com.zhang.authoritycenter.common.model.dto.sys.SystemDirectionReqDTO;
import com.zhang.infrastructure.api.authority.DirectionRemoteVO;
import com.zhang.infrastructure.api.authority.DirectionReqRemoteDTO;
import com.zhang.infrastructure.model.KingHoodResponseVO;
import com.zhang.sharding.model.PageResponseVO;

import java.util.List;

/**
 * <p>
 * 系统数据字典表 服务类
 * </p>
 *
 * @author KingHood
 * @since 2023-12-20
 */
public interface ISysDirectionService extends IService<SysDirectionDO> {

    PageResponseVO<?> queryDirectionPageList(DirectionReqExtDTO query);

    KingHoodResponseVO<?> queryDirectionBycode(DirectionReqExtDTO query);

    KingHoodResponseVO<?> addorUpdateDirection(SystemDirectionReqDTO dirReq);

    KingHoodResponseVO<?> updateSort(SystemDirectionReqDTO userReq);

    KingHoodResponseVO<?> delDirectionById(Long req);

    KingHoodResponseVO<?> queryDirectionById(Long id);

    Object selectOptionList(DirectionReqExtDTO dir, boolean b);

    List<DirectionRemoteVO> getDirectionByCodeList(DirectionReqRemoteDTO directionReqExtDTO);
}
